There are numerous applications in which users work with complex, structured, technical information. Often, the information is structured hierarchically with data being provided at different levels. Many applications utilize some type of graphical user interface (GUI) that can display information in a graphical format that makes the information more understandable for the user. For example, in designing a software application using a unified modeling language (UML), a user typically utilizes a high level flow diagram view for designing the overall architecture of the application, and then uses lower level diagrams or data objects to implement the more granular routines and processes. In other applications, a tree structure view may be provided to display an overall structure of a database, and node views may be provided to display sub-tree structures or actual data.
When working with such structured information, users must be able to rapidly and easily navigate multiple diagram levels, and adjust views using visual navigation tools. Otherwise, users can become lost, confused, or delayed. One of the limitations with current systems for viewing such data is that it is very easy for a user to lose the overall context of data as they drill up and down through different levels (i.e., how does a child level node relate to the overall structure). For example, in a file browser application, a new window is presented each time a user drills down into a subdirectory, but information in the window itself does not provide any overall context. Instead, the user must view a separate window (such as an address window, or tree window) to understand the context of the information. Thus, the parent-child relationship is not directly linked to the information itself.
Other applications have similar limitations. For instance, in some drawing or painting programs, users can select or view hidden objects, but only at their original scale. Accordingly, a single display cannot readily display both the information and the overall context of the information. Still other applications allow users to rapidly zoom in and out of diagram nodes; but after zooming, the parent context is no longer displayed.
Accordingly, a need exists for a system and method for displaying and navigating structured information while maintaining the overall context of the information.